package com.mini.mysql.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.Date;

/**
 * @author zhangxiaobin
 * @title: BusinessTeacherInfo
 * @date 2019/10/2715:53
 */
@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
public class BusinessTeacherInfo implements Serializable {

    private static final long serialVersionUID = 978510854242054163L;
    @Id
    private Long teacherId;

    @ApiModelProperty(value = "skuId")
    private Long skuId;

    @ApiModelProperty(value = "运营老师名称")
    private String teacherName;
    @ApiModelProperty(value = "运营老师登录名")
    private String teacherLoginName;

    @ApiModelProperty(value = "运营老师微信二维码")
    private String teacherQrUrl;

    @ApiModelProperty(value = "运营老师微信号")
    private String teacherWxId;

    @ApiModelProperty(value = "运营老师预加微信数量")
    private Integer addWechatNum;

    @ApiModelProperty(value = "所属运营组")
    private Long groupId;

    @ApiModelProperty(value = "所属运营组名称")
    private String groupName;

    @ApiModelProperty(value = "排序")
    private Integer orders;

    @ApiModelProperty(value = "状态 0启用 1禁用")
    private Integer states;

    private Long createUser;

    private Long updateUser;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    @ApiModelProperty(value = "部门id")
    private Long deptId;

    @ApiModelProperty(value = "工作室id", required = true)
    private Long workRoomId;

    @ApiModelProperty(value = "工作室名称", required = true)
    private String workRoomName;

    @ApiModelProperty(value = "运营专员手机号", required = true)
//    @EncryptField
    private String teacherPhoneNum;

    private Date changeDeptTime;

    @Transient
    private Long orderCount;
    @Transient
    private Long orderFromCount;
    @Transient
    private Long orderChangeCount;

}
